package com.example.springbootpractice.exceptionAdvice;


/*
实现：统一异常处理
1. 需要使用 @ControllerAdvice 注解
2. 然后使用 @ExceptionHandle(Exception.class) 修饰一个方法, 这个方法中可以有这个异常的对象
3. 返回值和方法名不做要求, 重要的是 @ExceptionHandle 注解
 */

import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;

import java.util.HashMap;

@ControllerAdvice
@ResponseBody
public class ExceptionAdvice {
    @ExceptionHandler(Exception.class)  // 表示捕获所有异常
    public void handle(Exception e) {
        HashMap<String, Object> result = new HashMap<>();
        result.put("state", "-1");
        result.put("msg", e.getMessage());
        System.out.println("统一异常处理");
    }
}
